QueryAgreement

The QueryAgreement web serviceClosed XML- or JSON-based information exchange systems that use the Internet for direct application-to-application interaction. These systems can include programs, objects, messages, or documents. enables an external client system to query an AgreementClosed In the Cloud Monetisation Platform, the entity that holds the instructions for generating the bills for one or more subscriptions. including the addresses and how often the bill is generated. and retrieve Agreement Summary details for any existing CMPClosed Converged Monetisation Platform. The MDS Global product that supports customer care and billing for digital service providers. Agreement.

The request supplies the number of the Agreement and a set of flags that determine the level of detail required.

Data sets exist for this web service which enables the userClosed A person with the capability to log in to the CMP GUI software, such as a customer service advisor or agent. to pass in a single value in order to retrieve a specific subset of information. This response returns basic details similar to AgentViewClosed The graphical user interface of the CMP that is typically used by Customer Service Agents to access CMP customer and billing data. In versions prior to CMP 8.0, this was called the CMP GUI. Agreement Summary, plus optional extra information determined by the request flags.

Submitting invalid data in the request will result in an error message.

QueryAgreement Request

The QueryAgreement request instructs the Agreement Service to query an Agreement. This request contains the following elements:

Element Name

Content Type

Description

Required?

ExternalReference

String69

The client may use this identifier to correlate the request and the response.

Optional

AgreementNumber

Integer8

The unique system generated reference number for the Agreement.

Mandatory

AgreementQueryDatasets

Container

This container includes zero or more of the following datasets:

  • BASIC
  • ADDRESS
  • CONTRACTANDSALES (DEPRECATED)
  • INVOICECONTROL
  • SERVICES
  • DISCOUNTS

Mandatory

Sample QueryAgreement Request
BASIC
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:def="http://mdsuk.com/ws/dise3g/agreement/definition">
   <soapenv:Header/>
   <soapenv:Body>
      <def:QueryAgreement>
         <def:Request>
            <!--You may enter the following 3 items in any order-->
            <!--Optional:-->
            <ExternalReference>?</ExternalReference>
            <AgreementNumber>3411286</AgreementNumber>
            <Datasets>
               <!--1 or more repetitions:-->
               <Dataset>BASIC</Dataset>
            </Datasets>
         </def:Request>
      </def:QueryAgreement>
   </soapenv:Body>
</soapenv:Envelope>
Address
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:def="http://mdsuk.com/ws/dise3g/agreement/definition">
   <soapenv:Header/>
   <soapenv:Body>
      <def:QueryAgreement>
         <def:Request>
            <!--You may enter the following 3 items in any order-->
            <!--Optional:-->
            <ExternalReference>?</ExternalReference>
            <AgreementNumber>3411286</AgreementNumber>
            <Datasets>
               <!--1 or more repetitions:-->
               <Dataset>ADDRESS</Dataset>
            </Datasets>
         </def:Request>
      </def:QueryAgreement>
   </soapenv:Body>
</soapenv:Envelope>
Invoice Control
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:def="http://mdsuk.com/ws/dise3g/agreement/definition">
   <soapenv:Header/>
   <soapenv:Body>
      <def:QueryAgreement>
         <def:Request>
            <!--You may enter the following 3 items in any order-->
            <!--Optional:-->
            <ExternalReference>?</ExternalReference>
            <AgreementNumber>3411286</AgreementNumber>
            <Datasets>
               <!--1 or more repetitions:-->
               <Dataset>INVOICECONTROL</Dataset>
            </Datasets>
         </def:Request>
      </def:QueryAgreement>
   </soapenv:Body>
</soapenv:Envelope>

QueryAgreement Response

QueryAgreement response is the response to the QueryAgreementDetails Request. This contains the following elements:

Element Name

Content Type

Description

Required?

ExternalReference

String69

Returned unmodified in the response. The client may use this identifier to correlate the request and the response.

Optional

AgreementBasic

Container

See AgreementBasic Response Container for details.

Optional

Address

Container

Choice of:

  • PersonalAddress
  • BusinessAddress

See AgreementAddress Response for details.

Optional

ContractAndSales (Deprecated)

Container

See ContractAndSales Response Container for details.

Optional

InvoiceControl

Container

See InvoiceControl Response Container for details.

Optional

CostCentres

Container

See CostCentres Response Container for details.

Optional

BASIC Response Container

The AgreementBasic response container is the response to the BASIC dataset when specified in the QueryAgreement request request. It contains the following elements:

Element Name

Content Type

Description

Required?

AgreementNumber

Integer8

The unique system generated reference number for the Agreement.

Optional

AgreementLoggedAt

Container

Choice of:

  • Group Code (String6).
  • Corporate Code (String6).
  • Account Number (Integer8).

Optional

Company

String6

The name of the company.

Mandatory

BillingCycle

Integer

This indicates which day of the month the invoice will be produced. Range 1-31 (Day of the Month)

Mandatory

InvoiceFrequency

Container

See InvoiceFrequency Response Container for further details.

Mandatory

TerminatedDate

Date

Once this date has been reached it will not be possible to link any further Subscriptions to the Agreement, although the Agreement remains valid for those Subscriptions already connected.

YYYY-MM-DDZ

Optional

InvoiceConsolidationLevel

String - Enumeration

Determines whether single or multiple invoices will be produced. One of:

  • Group
  • Corporate
  • Account
  • Subscription

Mandatory

InvoiceLoggedAt

String - Enumeration

The level at which the Agreement is logged. One of:

  • Group
  • Corporate
  • Account
  • Subscription

Optional

SuspendFromInvoicing

Boolean

Choice of true or false. If set to True then invoicing is suspended on the account.

Optional

InvoiceAddress

String

This indicates to which address invoices are mailed.

Mandatory

BillingMedia

String6

The unique code in which the invoice will be printed. Agreement.

Mandatory

AddressNumber

Integer8

Details the Account level delivery address number which is one of the several delivery addresses available in the system.

Optional

LastAmendedDate

dateTime

YYYY-MM-DDThh:mm:ssZ

Optional

InvoiceFrequency Response Container

The InvoiceFrequency response container has the following elements:

Element Name

Content Type

Description

Required?

InvoiceFrequencyIn

String - Enumeration

This indicates how often invoices are produced. Choice of:

  • DAYS
  • MONTHS

Mandatory

InvoiceEvery

Integer8

This details the type of billing cycle frequency on which invoices will be produced (e.g. 1 month).

Mandatory

Sample AgreementBasic Response
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
      <ns2:QueryAgreementResponse xmlns:ns2="http://mdsuk.com/ws/dise3g/agreement/definition" xmlns:ns3="http://mdsuk.com/ws/dise3g/fault/definition">
         <ns2:Result>
            <ExternalReference>?</ExternalReference>
            <AgreementBasic>
               <AgreementNumber>3411286</AgreementNumber>
               <AgreementLoggedAt>
                  <CorporateIdentifier>BK014</CorporateIdentifier>
               </AgreementLoggedAt>
               MDS CEM001</Company>
               <BillingCycle>12</BillingCycle>
               <InvoiceFrequency>
                  <InvoiceFrequencyIn>MONTHS</InvoiceFrequencyIn>
                  <InvoiceEvery>1</InvoiceEvery>
               </InvoiceFrequency>
               <InvoiceConsolidationLevel>Account</InvoiceConsolidationLevel>
               <InvoiceLoggedAt>Account</InvoiceLoggedAt>
               <InvoiceAddress>Account</InvoiceAddress>
               <BillingMedia>A</BillingMedia>
               <AddressNumber>7427120</AddressNumber>
               <LastAmendedDate>2016-06-23T15:13:27Z</LastAmendedDate>
            </AgreementBasic>
         </ns2:Result>
      </ns2:QueryAgreementResponse>
   </soapenv:Body>
</soapenv:Envelope>
Address Response Container

The Address response container is the response to ADDRESS dataset when specified in the QueryAgreement request. It contains the following elements:

Element Name

Content Type

Description

Required?

Address Number

Integer 0-99999999

This details the Account level delivery address number which is one of the several delivery addresses available.

Optional

Address

AddressType

Choice of:

Mandatory

Last Amended Date

dateTime

Last date on which the Address was amended.

Optional

PersonalAddress Response Container

The PersonalAddress response container has the following elements:

Element Name

Content Type

Description

Required?

Title

String10

The customer's appropriate title for example Mr, Mrs, Miss, Ms or Dr.

This field is always mandatory but can be made optional via configuration if required.

Mandatory

Forename

String50

Customer's first name.

Optional

MiddleName

String20

Customer's middle name.

Optional

Surname

String50

Customer's surname.

Mandatory

Address1

String60

Line one of the customer's address.

Mandatory

Address2

String60

Line one of the customer's address.

Optional

Address3

String60

Line one of the customer's address.

Optional

Address4

String60

Line one of the customer's address.

Optional

Address5

String60

Line one of the customer's address.

Optional

Postcode

String10

Customer's post code. Must be entered without spaces.

Optional

DateOfBirth

Date

Customer's date of birth, in the format YYYY-MM-DD.

Optional

Gender

String

Choice of: Male, Female, Unknown or BLANK.

Optional

MaritalStatus

String

Choice of: Married, Single, Widowed, Divorced, Other, Seperated or BLANK.

Optional

DateOfResidence

Date

The date from which the customer has lived at the address specified, in the format YYYY-MM-DD.

Optional

CustomerType

String10

Selected from one of the available Customer Types configured in CMP.

Optional

AddressType

String10

Identifies if the customer is a home owner, renting, living with parents, council tenant etc. Configurable CMP list.

Optional

AddressCategory

String10

Indicates property value. A category range relating to the address. Configurable CMP list.

Optional

Occupation

String10

The customer's current occupation. Configurable CMP list.

Optional

IDType

String10

The available type of ID used as proof of identity for example passport or driving license. Configurable CMP list.

Optional

IDNumber

String30

The unique ID from the proof of identity.

Optional

TelephoneNumber

String15

Customer's main contact telephone number.

Optional

EveningTelephoneNumber

String15

Customer's additional telephone number they can be reached on.

Optional

FaxNumber

String15

Customer's fax number.

Optional

 

CMP configuration controls which elements are mandatory and optional. Standard validation settings can be changed via setup: DISESETUP > 5. Subscriber Registration Set up > 15. Delivery Address Set Up > 8. Field Validation Maintenance. Enter 'P' for Personal Address.

BusinessAddress Response Container

The BusinessAddress response container has the following elements:

Element Name

Content Type

Description

Required?

CompanyName

String60

Name of company.

Mandatory

Address1

String40

Line one of the company's address.

Mandatory

Address2

String40

Line two of the company's address.

Optional

Address3

String40

Line three of the company's address.

Optional

Address4

String40

Line four of the company's address.

Optional

Address5

String40

Line five of the company's address.

Optional

Postcode

String10

Company's postcode. Must be entered without spaces.

Optional

CompanyTelephoneNumber

String15

Company's main contact telephone number.

Optional

ContactTelephoneNumber

String15

The individual's contact telephone number.

Optional

FaxNumber

String15

Company's fax number

Optional

CompanyType

String10

Indicates the type of company. Configurable CMP list.

Optional

AddressType

String10

Identifies the company's address. Configurable CMP list.

Optional

AddressCategory

String10

Indicates property value. A category range relating to the address can be configured. Configurable CMP list.

Optional

IndustrialClassificationCode

String10

Indicates the industry the company resides. Configurable CMP list.

Optional

CompanyRegistration

String25

Unique ID the company is registered to.

Optional

DateOfIncorporation

Date

The date the company register at the address specified, in the format YYYY-MM-DD.

Optional

Title

String10

Company's contact title.

Optional

Forename

String15

Company's contact first name.

Optional

MiddleName

String10

Company's contact middle name.

Optional

Surname

String25

Company's contact surname name.

Optional

JobTitle

String30

Company's contact job title.

Optional

 

CMP configuration controls which elements are mandatory and optional. Standard validation settings can be changed via setup: DISESETUP > 5. Subscriber Registration Set up > 15. Delivery Address Set Up > 8. Field Validation Maintenance. Enter 'C' for Company Address.

Sample Address Response
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<ns2:QueryAgreementResponse xmlns:ns2="http://mdsuk.com/ws/dise3g/agreement/definition" xmlns:ns3="http://mdsuk.com/ws/dise3g/fault/definition">
<ns2:Result>
<ExternalReference>?</ExternalReference>
<Address>
<AddressNumber>7427129</AddressNumber>
<BusinessAddress>
<CompanyName>ABC DISTRIBUTION</CompanyName>
<Address1>BOUGHT LEDGER DEPT</Address1>
<Address2>24</Address2>
<Address3>WARRINGTON</Address3>
<Address4>SANKEY</Address4>
<Address5>CHES.</Address5>
<Postcode>WA0 0XX</Postcode>
<CompanyTelephoneNumber>01999999999</CompanyTelephoneNumber>
<FaxNumber/>
<ContactTelephoneNumber>01999999999</ContactTelephoneNumber>
<CompanyType/>
<AddressType/>
<AddressCategory/>
<IndustrialClassificationCode/>
<CompanyRegistration/>
<Title>MR</Title>
<Forename>ROBERT</Forename>
<MiddleName>A</MiddleName>
<Surname>SMITH</Surname>
<JobTitle/>
</BusinessAddress>
<LastAmendedDate>2016-10-09T14:12:04Z</LastAmendedDate>
</Address>
</ns2:Result>
</ns2:QueryAgreementResponse>
</soapenv:Body>
</soapenv:Envelope>
ContractAndSales Response Container

ContractAndSales response container was the response to the CONTRACTANDSALES dataset when specified QueryAgreement request. The UpdateContractAndSales request container has now been deprecated. An error message is returned for requests that specify this container.

InvoiceControl Response Container

The InvoiceControl response container is the response to the INVOICECONTROL dataset when specified in the QueryAgreement request. It contains the following elements:

Element Name

Content Type

Description

Required?

OverrideBillingCycle

Boolean

If set to True, the day on which the bill is produced can be overridden if more than one billing cycle date is available. For example, the date can be amended to fall in line with the day a customer receives their salary.

Optional

FirstInvoiceOnCycle

Boolean

If set to True, Invoice Production will be deferred to the next cyclical billing date (if connection occurs after the cycle date within the current month).

Optional

FinalInvoiceOnCycle

Boolean

The final Invoice Production is usually deferred to allow all receipt of all possible late roamed usage information from the network.

If set to True, this deferral is prevented and the final bill is produced on the cycle date.

Optional

FirstInvoiceDate

Date

The date on which the first invoice was produced.

YYYY-MM-DDZ

Optional

NextExpectedInvoiceDate

Date

The cycle date on which the very next invoice will be produced.

YYYY-MM-DDZ

Optional

LastInvoiceDate

Date

The cycle date of the most recent invoice issued to the customer. It does not relate to the Final invoice.

YYYY-MM-DDZ

Optional

LastAmendedDate

dateTime

YYYY-MM-DDThh:mm:ssZ

Optional